/* *****************************************************************************

  Copyright (C), 2023-2023, Huawei Tech. Co., Ltd.

 ******************************************************************************
  File Name     : hisec_mpu_cmd.h
  Version       : Initial Draft
  Created       : 2023/8/21
  Last Modified :
  Description   : secure commands between Driver and MPU/uCode
  Function List :
***************************************************************************** */

#ifndef HISEC_MPU_CMD_H
#define HISEC_MPU_CMD_H

/**
 * @brief Crypto driver to MPU Commands
 *
 */
typedef enum hisec_mpu_cmd {
    HISEC_MPU_CMD_SET_IPSEC_OFFLOAD_MODE = 2, /**< MPU crypt set IPsec offload mode
                                                   @see struct hisec_cmd_ipsec_offload_mode */
    HISEC_MPU_CMD_GET_CRYPTO_STATS = 3,       /**< MPU crypt get crypto states
                                                   @see struct hisec_cmd_cryptodev_stats */
    HISEC_MPU_CMD_GET_IPSEC_SAD = 4,          /**< MPU crypt get IPsec SAD
                                                   @see struct hisec_cmd_sml_table */
    HISEC_MPU_CMD_GET_IPSEC_SPD = 5,          /**< MPU crypt get IPsec SPD
                                                   @see struct hisec_cmd_sml_table */
    HISEC_MPU_CMD_GET_IPSEC_ITEM_CNT = 6,     /**< MPU crypt get IPsec item count
                                                   @see struct hisec_cmd_ipsec_item_cnt */
    HISEC_MPU_CMD_SET_IPSEC_CTRL_HOST = 7,    /**< MPU cpypt set IPsec ctrl host
                                                   @see struct hisec_cmd_ipsec_ctrl_host */

    HISEC_MPU_CMD_MAX = 255
} hisec_mpu_cmd_type_e;

#endif /* HISEC_MPU_CMD_H */